package com.answeringplayer.mapper;

import com.answeringplayer.domain.ExamAttempt;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

/**
 * 考试尝试记录Mapper接口
 */
@Mapper
public interface ExamAttemptMapper {
    /**
     * 新增考试尝试记录
     * @param examAttempt 考试尝试记录
     * @return 影响行数
     */
    int insert(ExamAttempt examAttempt);

    /**
     * 根据ID更新考试尝试记录
     * @param examAttempt 考试尝试记录
     * @return 影响行数
     */
    int updateById(ExamAttempt examAttempt);

    /**
     * 根据ID删除考试尝试记录
     * @param recordId 记录ID
     * @return 影响行数
     */
    int deleteById(Long recordId);

    /**
     * 根据ID查询考试尝试记录
     * @param recordId 记录ID
     * @return 考试尝试记录
     */
    ExamAttempt selectById(Long recordId);

    /**
     * 根据用户ID查询考试尝试记录列表
     * @param userId 用户ID
     * @return 考试尝试记录列表
     */
    List<ExamAttempt> selectByUserId(Long userId);

    /**
     * 查询所有考试尝试记录
     * @return 考试尝试记录列表
     */
    List<ExamAttempt> selectAll();
}